--======================================================================--
-- @作者: GGE研究群: 342119466
-- @创建时间:   2018-03-03 02:34:19
-- @Last Modified time: 2021-04-21 22:57:54
--======================================================================--
local 好友观察 = class()

local floor = math.floor
local tp,zts,zts1
local bw = require("gge包围盒")(0,0,153,58)
local mouseb = 引擎.鼠标弹起
local box = 引擎.画矩形
local insert = table.insert
function 好友观察:初始化(根)
  self.ID = 166
  self.x = -46
  self.y = -40
  self.xx = 0
  self.yy = 0
  self.右键关闭=1
  self.注释 = "好友查看类2"
  self.可视 = false
  self.鼠标 = false
  self.焦点 = false
  self.可移动 = true
  self.窗口时间 = 0
  tp = 根
  zts = tp.字体表.普通字体
  zts1 = tp.字体表.描边字体
end

function 好友观察:打开(数据)
  if self.可视 then
    self.可视 = false
    self.动画=nil
    self.资源组=nil
    self.装备坐标=nil
  else
    insert(tp.窗口_,self)
    self:加载资源()
    self.选中 = 0
    self.加入 = 0
    tp.运行时间 = tp.运行时间 + 1
    self.窗口时间 = tp.运行时间
    self.可视 = true
    self.好友观察 = true
    self.数据=数据
    for i=1,6 do
      self.物品数据[i]:置物品(self.数据.装备[i])
    end
    if tp.场景.玩家[self.数据.id]~=nil then
      self.动画数据=tp.场景.玩家[self.数据.id]:取玩家动画()
    end
  end
end

function 好友观察:加载资源()
  local 资源 = tp.资源
  local 按钮 = tp._按钮
  local 自适应 = tp._自适应
  self.资源组 = {
    [1] = 自适应.创建(0,1,255,370,3,9),
    [2] = 按钮.创建(自适应.创建(18,4,16,16,4,3),0,0,4,true,true),
    }
  self.装备坐标={
    [1]={x=360,y=317},   --头盔
    [2]={x=540,y=317},    --项链
    [3]={x=360,y=260},    --武器
    [4]={x=540,y=260},   --衣服
    [5]={x=360,y=203},  --腰带
    [6]={x=540,y=203}   --鞋子
    }
  self.物品数据 = {}
  local 格子 = tp._物品格子
  self.底图 =资源:载入('wzife.wdf',"网易WDF动画",0xA393A808)
  for i=1,6 do
    self.物品数据[i] = 格子.创建(0,0,i,"出售",底图)
  end
end

function 好友观察:显示(dt,x,y)
  self.焦点 = false
  self.资源组[2]:更新(x,y)
  self.资源组[1]:显示(self.x+350,self.y+150)
  self.资源组[2]:显示(self.x+350+230,self.y+150+5)
  if self.动画数据 then
    if self.动画数据["静立"]~=nil then
      self.动画数据["静立"]:更新(dt)
    end
    if self.动画数据["武器_".."静立"] ~= nil then
      self.动画数据["武器_".."静立"]:更新(dt)
    end
    if self.动画数据["坐骑_".."静立"] ~= nil then
      self.动画数据["坐骑_".."静立"]:更新(dt)
      if self.动画数据["坐骑饰品_".."静立"] ~= nil then
        self.动画数据["坐骑饰品_".."静立"]:更新(dt)
      end
    end
    if self.动画数据["静立"]~=nil then
      self.动画数据["静立"]:显示(self.x+350+130,self.y+150+195)
    end
    if self.动画数据["武器_".."静立"] ~= nil then
      self.动画数据["武器_".."静立"]:显示(self.x+350+130,self.y+150+195)
    end
    if self.动画数据["坐骑_".."静立"] ~= nil then
      self.动画数据["坐骑_".."静立"]:显示(self.x+350+130,self.y+150+195)
      if self.动画数据["坐骑饰品_".."静立"] ~= nil then
        self.动画数据["坐骑饰品_".."静立"]:显示(self.x+350+130,self.y+150+195)
      end
    end

  end
  if self.资源组[2]:事件判断() or (self.资源组[1]:是否选中(x,y) and 引擎.鼠标弹起(右键)) then
    self:打开()
    return false
  end
  for i=1,6 do
    self.底图:显示(self.x+self.装备坐标[i].x-2,self.y+self.装备坐标[i].y)
    self.物品数据[i]:置坐标(self.x+self.装备坐标[i].x,self.y+self.装备坐标[i].y)
    self.物品数据[i]:显示(dt,x,y,self.鼠标)
    if self.物品数据[i].焦点 and self.物品数据[i].物品 ~= nil then
      tp.提示:道具行囊(x,y,self.物品数据[i].物品)
    end
  end
  zts:置颜色(白色)
  zts:显示(self.x+360,self.y+175,"门派：")

  zts:显示(self.x+400,self.y+415,"名称：")
  zts:显示(self.x+400,self.y+439,"I D :")
  zts:显示(self.x+400,self.y+460,"等级：")
  zts:置颜色(黄色)
  zts:显示(self.x+410,self.y+175,self.数据.门派)
  zts:显示(self.x+450,self.y+415,self.数据.名称)
  zts:显示(self.x+450,self.y+439,self.数据.id)
  zts:显示(self.x+450,self.y+460,self.数据.等级)
end

function 好友观察:检查点(x,y)
  -- if self.资源组[1]:是否选中(x,y)  then
    return true
  -- end
end

function 好友观察:初始移动(x,y)
  tp.运行时间 = tp.运行时间 + 1
  if not tp.消息栏焦点 then
    self.窗口时间 = tp.运行时间
  end
  if not self.焦点 then
    tp.移动窗口 = true
  end
  if self.鼠标 and not self.焦点 then
    self.xx = x - self.x
    self.yy = y - self.y
  end
end

function 好友观察:开始移动(x,y)
  if self.鼠标 then
    self.x = x - self.xx
    self.y = y - self.yy
  end
end

return 好友观察